In some mobile robots an important component is a vision system which detects features within the robot's environment and provides a navigation system with inputs related to the position and/or distance of the features relative to the robot's present position. These inputs are utilized by the navigation system to steer the robot such that a particular feature is avoided, in which case the feature may be considered to be an obstacle, or to steer the robot in order to direct the robot towards the feature. For example, if a first feature is an opening within a doorway it may be desirable to steer the robot such that the robot passes through the doorway while avoiding a second feature, such as a chair, disposed within the path of the robot.
One conventional type of robotic vision system employs the transmission of energy into the robot's environment and the subsequent detection of reflected energy. The energy may be acoustic or laser energy. For example, acoustic energy is reflected from features in the environment and is subsequently processed to determine the range and bearing to the features. It has been found however that such acoustic imaging systems are limited in the rate of transmission and also in wavelength and thus suffer from a corresponding limited feature resolution capability. Furthermore, many features exhibit differing acoustic reflection properties, thereby complicating the extraction of feature related signals from the reflected energy. Furthermore, laser transmitters may add significant cost, weight and power requirements to the system and may be inappropriate for many applications.
Another type of conventional robotic vision system employes a two dimensional array of electromagnetic radiation sensors, such as a vidicon or a CCD radiation sensor, in order to generate a two dimensional image of the environment. Such images generally are comprised of a plurality of image pixels, the number of which relates to the resolution of the visual system. Each pixel typically has a digital value associated therewith which relates to the amount of radiation received by a corresponding sensor, these values being known as a gray scale. For example, each pixel may have a byte value (8 bits) which corresponds to an intensity range between zero and 255. A number of image processing techniques are known for processing pixel gray scale values to enhance image features which may be significant for a given robotic task. These techniques include the Sobel and Laplacian Operators for feature edge detection, Gaussian Operators for image filtering and Fourier Transforms for characterizing image regularity and symmetry.
Such conventional two-dimensional vision systems generate ionic, or image, representations of the environment which are typically subsequently processed to derive a symbolic representation wherein environmental features are expressed as a list of features and the relative positional coordinates of the features. As can be appreciated, due to the large amount of data generated by a two dimensional imaging system this is a time consuming, computation intensive process.
Thus, a significant problem is introduced by such conventional two dimensional imaging systems and processing techniques when it is desired to provide a relatively small, low cost mobile robotic system which moves in a continuous and "real time" fashion. This problem is related to the speed, power consumption and complexity of the image processing system hardware and to the time required to image, digitize and process one two dimensional "frame" of image data. Inasmuch as it is generally undesirable to provide the image processing system separate from the mobile robot platform, the image processing system should be amenable to being carried by the moving platform and being powered by the power system of the mobile robot; the power system typically relying on batteries. Furthermore, if the time required to process each frame of pixel data, each frame comprising, for example, a two dimensional array of 256.times.256 pixels, is as long as several seconds the continuous motion of the robot through the environment is made difficult or impossible to achieve.
It has also been known to provide fixed guidance reference points, or "beacons", within the robot's environment, such as electrical wires embedded in the floor or infrared sources disposed along the path of the robot. Such active beacons are generally undesirable in that they introduce additional cost and complexity to the system and in general constrain the motion of the robot to a predefined path. In some systems the beacons may be combined with the aforementioned acoustic system or other proximity detection systems, the proximity detection system being provided to detect obstacles along the predefined path. The detection of an obstacle in the path of the robot may require that the robot stop until the obstacle is removed which, in some applications, may be undesirable for a number of reasons.
In accordance with the method and apparatus of the invention, a simplification of vision and vision processing is provided for a mobile robot, the robot preferably moving on a substantially planar surface, such as a floor of a building or a graded or a paved outdoor surface. That is, for a surface which is substantially two dimensional the invention provides a vision system whose field of view is substantially parallel to the surface and which generates a one dimensional image. Processing the one dimensional image provides data sufficient for navigation by the mobile robot on the two dimensional surface.
It is thus one object of the invention to provide a vision system for a mobile robot which requires a minimum of image processing system complexity while yet having an image resolution which is sufficient for guiding the robot through an environment.
It is a further object of the invention to provide a vision system for a mobile robot which does not require active beacons or other environmental modification means to be disposed within the robot's environment.
It is a still further object of the invention to provide a vision system for a mobile robot which does not process two dimensional image data but which, instead, processes a less complex one dimensional visual image of an environment, thereby deriving data for navigation upon a substantially planar surface.
It is thus one still further object of the invention to provide a vision system for a mobile robot which operates in a high speed manner and which permits the continuous, adaptive motion of the robot through the robot's environment.